unit MyTypes;


interface
 uses
  Direct3D9,D3DX9;

 type


//-----------------------------------------------------------------------------
  {$REGION ' Game Engine '}
//-----------------------------------------------------------------------------

  pPosXY = ^TPosXY;

  TPosXY = record
   x,y : real;
  end;

  
//-----------------------------------------------------------------------------
  {$ENDREGION}
//-----------------------------------------------------------------------------

//-----------------------------------------------------------------------------
  {$REGION ' Graphics types '}
//-----------------------------------------------------------------------------

type
 PD3DMaterial9Array          = ^TD3DMaterial9Array;
 TD3DMaterial9Array          = array[0..MaxInt div SizeOf(TD3DMaterial9)-1] of TD3DMaterial9;

 PIDirect3DTexture9Array     = ^IDirect3DTexture9Array;
 IDirect3DTexture9Array      = array[0..MaxInt div SizeOf(IDirect3DTexture9)-1] of IDirect3DTexture9;

 PD3DXMaterialArray          = ^TD3DXMaterialArray;
 TD3DXMaterialArray          = array[0..MaxInt div SizeOf(TD3DXMaterial)-1] of TD3DXMaterial;

 pMesh = ^TMesh;

 TMesh = record
  pMesh:               ID3DXMesh;                // Mesh object in sysmem
  pMeshMaterials:      PD3DMaterial9Array;       // Materials for Mesh
  pMeshTextures:       PIDirect3DTexture9Array;  // Textures for Mesh
  NumMaterials:        Integer;                  // Number of mesh materials
  x,y,z,a,s:           Single;
 end;

 TMeshArray = packed record
  NumMesh:     integer;
  Mesh:        array [0..100] of Tmesh;
 end;

//-----------------------------------------------------------------------------
  {$ENDREGION}
//-----------------------------------------------------------------------------

//-----------------------------------------------------------------------------
  {$REGION ' Pathfinding types '}
//-----------------------------------------------------------------------------
t_node = record
      count_h : real ;
      count_g : real ;
      count_f : real ;
      coord, parent: TPosXY ;
    end;

Pnode = ^t_node ;

//-----------------------------------------------------------------------------
  {$ENDREGION}
//-----------------------------------------------------------------------------

implementation

end.
